Systems and methods for real-time system monitoring and predictive analysis

ABSTRACT

A system for providing real-time modeling of an electrical system under management is disclosed. The system includes a data acquisition component, a virtual system modeling engine, and an analytics engine. The data acquisition component is communicatively connected to a sensor configured to provide real-time measurements of data output from an element of the system. The virtual system modeling engine is configured to generate a predicted data output for the element. The analytics engine is communicatively connected to the data acquisition system and the virtual system modeling engine and is configured to monitor and analyze a difference between the real-time data output and the predicted data output.

APPLICATIONS FOR CLAIM OF PRIORITY

This application claims the benefit under 35 U.S.C. §120 of copendingU.S. patent application Ser. No. 11/674,994, filed Feb. 14, 2007, andwhis is issued as U.S. Pat. No. 7,826,990 on Nov. 2, 2010, entitled“SYSTEMS AND METHODS FOR REAL-TIME SYSTEM MONITORING AND PREDICTIVEANALYSIS,” which in turn claims the benefit under 35 U.S.C. §119(e) ofU.S. Provisional Application No. 60/773,560, filed Feb. 14, 2006. Thedisclosures of the above-identified applications are incorporated hereinby reference as if set forth in their entirety.

BACKGROUND

I. Field of the Invention

The present invention relates generally to computer modeling andmanagement of systems and, more particularly, to computer simulationtechniques with real-time system monitoring and prediction of electricalsystem performance.

II. Background of the Invention

Computer models of complex systems enable improved system design,development, and implementation through techniques for off-linesimulation of the system operation. That is, system models can becreated that computers can “operate” in a virtual environment todetermine design parameters. All manner of systems can be modeled,designed, and operated in this way, including machinery, factories,electrical power and distribution systems, processing plants, devices,chemical processes, biological systems, and the like. Such simulationtechniques have resulted III reduced development costs and superioroperation.

Design and production processes have benefited greatly from suchcomputer simulation techniques, and such techniques are relatively welldeveloped, but such techniques have not been applied in real-time, e.g.,for real-time operational monitoring and management. In addition,predictive failure analysis techniques do not generally use real-timedata that reflect actual system operation. Greater efforts at real-timeoperational monitoring and management would provide more accurate andtimely suggestions for operational decisions, and such techniquesapplied to failure analysis would provide improved predictions of systemproblems before they occur. With such improved techniques, operationalcosts could be greatly reduced.

For example, mission critical electrical systems, e.g., for data centersor nuclear power facilities, must be designed to ensure that power isalways available. Thus, the systems must be as failure proof aspossible, and many layers of redundancy must be designed in to ensurethat there is always a backup in case of a failure. It will beunderstood that such systems are highly complex, a complexity made evengreater as a result of the required redundancy. Computer design andmodeling programs allow for the design of such systems by allowing adesigner to model the system and simulate its operation. Thus, thedesigner can ensure that the system will operate as intended before thefacility is constructed.

Once the facility is constructed, however, the design is typically onlyreferred to when there is a failure. In other words, once there isfailure, the system design is used to trace the failure and takecorrective action; however, because such design are so complex, andthere are many interdependencies, it can be extremely difficult and timeconsuming to track the failure and all its dependencies and then takecorrective action that does not result in other system disturbances.

Moreover, changing or upgrading the system can similarly be timeconsuming and expensive, requiring an expert to model the potentialchange, e.g., using the design and modeling program. Unfortunately,system interdependencies can be difficult to simulate, making even minorchanges risky.

SUMMARY

Systems and methods for monitoring and predictive analysis of systems inreal-time are disclosed.

In one aspect, a system for providing real-time modeling of anelectrical system under management is disclosed. The system includes adata acquisition component, a virtual system modeling engine, and ananalytics engine. The data acquisition component is communicativelyconnected to a sensor configured to provide real-time measurements ofdata output form an element of the system. The virtual system modelingengine is configured to generate a predicted data output for theelement. The analytics engine is communicatively connected to the dataacquisition system and the virtual system modeling engine and isconfigured to monitor and analyze a difference between the real-timedata output and the predicted data output.

In a different aspect, a data processing system for real-time monitoringand predictive analysis of an electrical system under management isdisclosed. The system includes a calibration and synchronization engineand an analysis server. The calibration and synchronization engine isconfigured to process real-time data indicative of the electrical systemstatus and update a virtual model of the electrical system in responseto the real-time data. The analysis server is configured to compare theprocessed real-time data indicative of the electrical system status withthe updated virtual model and produce a real-time report of theelectrical system status in response to the comparison.

In another aspect, a system for providing real-time modeling of anelectrical system is disclosed. The system includes a data acquisitioncomponent, a virtual system modeling engine, a virtual system modelingdatabase, an analytics engine, and a calibration engine communicativelyconnected to the data acquisition component. The data acquisitioncomponent is communicatively connected to a sensor configured to providereal-time measurements of data output from an element of the electricalsystem. The virtual system modeling engine is configured to generatepredicted data output for the same element of the electrical system. Thevirtual system modeling database is configured to store a virtual systemmodel of the electrical system. The analytics engine is communicativelyconnected of the data acquisition system and the virtual system modelingengine and configured to monitor and determine a difference between thereal-time data output and the predicted data output.

If the difference exceed an alarm condition value, the analytics enginegenerates a warning message. If the difference is less than the alarmcondition value but greater than a set value, the analytics enginegenerates a virtual system model calibration request. If the differenceis less than the set value, the analytics engine continues monitoringthe real-time data output and the predictive data output. Thecalibration engine is communicatively connected to the data acquisitioncomponent, the virtual system modeling engine, the virtual systemmodeling database, and the analytics engine. The calibration engine isfurther configured to receive the calibration request from the analyticsengine and update operational parameters of the virtual system modelingengine and the virtual system model upon receipt of the calibrationrequest.

In still another embodiment, a system for providing real-time modelingof an electrical system is disclosed. The system includes a dataacquisition component, a virtual system modeling database, an analyticsengine, and a calibration engine. The data acquisition component iscommunicatively connected to sensors configured to provide real-timedata of ambient environmental conditions impacting the electricalsystem. The virtual system modeling database is configured to store avirtual system model of the electrical system, wherein the virtualsystem model includes preset values for the environmental conditionsimpacting the electrical system. The analytics engine is communicativelyconnected to the data acquisition component and the virtual systemmodeling engine and is configured to monitor and determine a differencebetween the real-time ambient environmental data and the presetenvironmental values.

If the difference exceeds an alarm condition value, the analytics enginegenerates a warning message. If the difference is less than the alarmcondition value but greater than a set value, the analytics enginegenerates a virtual system model calibration request. If the differenceis less than the set value, the analytics engine continues monitoringthe real-time ambient environmental data and the preset environmentalvalues. The calibration engine is communicatively connected to the dataacquisition component, the virtual system modeling database, and theanalytics engine. The calibration engine is configured to receive thecalibration request from the analytics engine and update the presetenvironmental values upon receipt of the calibration request.

In yet another embodiment, a method for real-time monitoring andpredictive analysis of an electrical system under management isdisclosed. Real-time data indicative of the electrical system status isprocessed to enable a virtual model of the electrical system undermanagement to be calibrated and synchronized with the real-time data.The virtual model of the electrical system under management is updatedin response to the real-time data. The processed real-time dataindicative of the electrical system status is compared withcorresponding output values of the updated virtual model to generate areal-time report of the system status in response to the comparison.

In a separate aspect, a method for managing real-time updates to avirtual system model of an electrical system is disclosed. Real-timedata output from a sensor interfaced with the electrical system isreceived. The real-time data is processed into a defined format.Predicted system data for the electrical system is generated using avirtual system model of the electrical system. A determination is madeas to whether a difference between the real-time data output and thepredicted system data falls between a set value and an alarm condition.If the difference does fall between the set value and alarm conditionvalue, a virtual system calibration request is generated.

In a different aspect, a method for synchronizing real-time system datawith a virtual system model of an electrical system is disclosed. Avirtual system model request is received. A predicted system outputvalue for the virtual system model is updated with a real-time systemoutput value from the electrical system. A difference between areal-time sensor measurement from a sensor integrated with theelectrical system and a predicted sensor value for the sensor isdetermined. Operating parameters of the virtual system model is adjustedto minimize the difference.

These and other features, aspects, and embodiments of the invention aredescribed below in the section entitled “Detailed Description.”

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the principles disclosed herein,and the advantages thereof, reference is now made to the followingdescriptions taken in conjunction with the accompanying drawings, inwhich:

FIG. 1 is an illustration of a system for utilizing real-time data forpredictive analysis of the performance of a monitored system, inaccordance with one embodiment.

FIG. 2 is a diagram illustrating a detailed view of a analytics serverincluded in the system of FIG. 1.

FIG. 3 is a diagram illustrating how the system of FIG. 1 operates tosynchronize a the operating parameters between a physical facility and avirtual system model of the facility.

FIG. 4 is an illustration of the scalability of a system for utilizingreal-time data for predictive analysis of the performance of a monitoredsystem, in accordance with one embodiment.

FIG. 5 is a block diagram that shows the configuration details of thesystem illustrated in FIG. 1, in accordance with one embodiment.

FIG. 6 is an illustration of a flowchart describing a method forreal-time monitoring and predictive analysis of a monitored system, inaccordance with one embodiment.

FIG. 7 is an illustration of a flowchart describing a method formanaging real-time updates to a virtual system model of a monitoredsystem, in accordance with one embodiment.

FIG. 8 is an illustration of a flowchart describing a method forsynchronizing real-time system data with a virtual system model of amonitored system, in accordance with one embodiment.

DETAILED DESCRIPTION

Systems and methods for monitoring and predictive analysis of systems inreal-time are disclosed. It will be clear, however, that the presentinvention may be practiced without some or all of these specificdetails. In other instances, well known process operations have not beendescribed in detail in order not to unnecessarily obscure the presentinvention.

As used herein, a system denotes a set of components, real or abstract,comprising a whole where each component interacts with or is related toat least one other component within the whole. Examples of systemsinclude machinery, factories, electrical systems, processing plants,devices, chemical processes, biological systems, data centers, aircraftcarriers, and the like. An electrical system can designate a powergeneration and/or distribution system that is widely dispersed (i.e.,power generation, transformers, and/or electrical distributioncomponents distributed geographically throughout a large region) orbounded within a particular location (e.g., a power plant within aproduction facility, a bounded geographic area, on board a ship, etc.).

A network application is any application that is stored on anapplication server connected to a network (e.g., local area network,wide area network, etc.) in accordance with any contemporaryclient/server architecture model and can be accessed via the network. Inthis arrangement, the network application programming interface (API)resides on the application server separate from the client machine. Theclient interface would typically be a web browser (e.g. INTERNETEXPLORER™, FIREFOX™, NETSCAPE™, etc.) that is in communication with thenetwork application server via a network connection (e.g., HTTP, HTTPS,RSS, etc.).

FIG. 1 is an illustration of a system for utilizing real-time data forpredictive analysis of the performance of a monitored system, inaccordance with one embodiment. As shown herein, the system 100 includesa series of sensors (i.e., Sensor A 104, Sensor B 106, Sensor C 108)interfaced with the various components of a monitored system 102, a dataacquisition hub 112, an analytics server 116, and a thin-client device128. In one embodiment, the monitored system 102 is an electrical powergeneration plant. In another embodiment, the monitored system 102 is anelectrical power transmission infrastructure. In still anotherembodiment, the monitored system 102 is an electrical power distributionsystem. In still another embodiment, the monitored system 102 includes acombination of one or more electrical power generation plant(s), powertransmission infrastructure(s), and/or an electrical power distributionsystem. It should be understood that the monitored system 102 can be anycombination of components whose operations can be monitored withconventional sensors and where each component interacts with or isrelated to at least one other component within the combination. For amonitored system 102 that is an electrical power generation,transmission, or distribution system, the sensors can provide data suchas voltage, frequency, current, load, power factor, and the like.

The sensors are configured to provide output values for systemparameters that indicate the operational status and/or “health” of themonitored system 102. For example, in an electrical power generationsystem, the current output or voltage readings for the variouscomponents that comprise the power generation system is indicative ofthe overall health and/or operational condition of the system. In oneembodiment, the sensors are configured to also measure additional datathat can affect system operation. For example, for an electrical powerdistribution system, the sensor output can include environmentalinformation, e.g., temperature, humidity, etc., which can impactelectrical power demand and can also affect the operation and efficiencyof the power distribution system itself.

Continuing with FIG. 1, in one embodiment, the sensors are configured tooutput data in an analog format. For example, electrical power sensormeasurements (e.g., voltage, current, etc.) are sometimes conveyed in ananalog format as the measurements may be continuous in both time andamplitude. In another embodiment, the sensors are configured to outputdata in a digital format. For example, the same electrical power sensormeasurements may be taken in discrete time increments that are notcontinuous in time or amplitude. In still another embodiment, thesensors are configured to output data in either an analog or digitalformat depending on the sampling requirements of the monitored system102.

The sensors can be configured to capture output data at split-secondintervals to effectuate “real time” data capture. For example, in oneembodiment, the sensors can be configured to generate hundreds ofthousands of data readings per second. It should be appreciated,however, that the number of data output readings taken by a sensor maybe set to any value as long as the operational limits of the sensor andthe data processing capabilities of the data acquisition hub 112 are notexceeded.

Still with FIG. 1, each sensor is communicatively connected to the dataacquisition hub 112 via an analog or digital data connection 110. Thedata acquisition hub 112 may be a standalone unit or integrated withinthe analytics server 116 and can be embodied as a piece of hardware,software, or some combination thereof. In one embodiment, the dataconnection 110 is a “hard wired” physical data connection (e.g., serial,network, etc.). For example, a serial or parallel cable connectionbetween the sensor and the hub 112. In another embodiment, the dataconnection 110 is a wireless data connection. For example, a radiofrequency (RF), BLUETOOTH™, infrared or equivalent connection betweenthe sensor and the hub 112.

The data acquisition hub 112 is configured to communicate “real-time”data from the monitored system 102 to the analytics server 116 using anetwork connection 114. In one embodiment, the network connection 114 isa “hardwired” physical connection. For example, the data acquisition hub112 may be communicatively connected (via Category 5 (CAT5), fiber opticor equivalent cabling) to a data server (not shown) that iscommunicatively connected (via CAT5, fiber optic or equivalent cabling)through the Internet and to the analytics server 116 server. Theanalytics server 116 being also communicatively connected with theInternet (via CAT5, fiber optic, or equivalent cabling). In anotherembodiment, the network connection 114 is a wireless network connection(e.g., Wi-Fi, WLAN, etc.). For example, utilizing a 802.11b/g orequivalent transmission format. In practice, the network connectionutilized is dependent upon the particular requirements of the monitoredsystem 102.

Data acquisition hub 112 can also be configured to supply warning andalarms signals as well as control signals to monitored system 102 and/orsensors 104, 106, and 108 as described in more detail below.

As shown in FIG. 1, in one embodiment, the analytics server 116 hosts ananalytics engine 118, virtual system modeling engine 124 and severaldatabases 126, 130, and 132. The virtual system modeling engine can,e.g., be a computer modeling system, such as described above. In thiscontext, however, the modeling engine can be used to precisely model andmirror the actual electrical system. Analytics engine 118 can beconfigured to generate predicted data for the monitored system andanalyze difference between the predicted data and the real-time datareceived from hub 112.

FIG. 2 is a diagram illustrating a more detailed view of analytic server116. As can be seen, analytic server 116 is interfaced with a monitoredfacility 102 via sensors 202, e.g., sensors 104, 106, and 108. Sensors202 are configured to supply real-time data from within monitoredfacility 102. The real-time data is communicated to analytic server 116via a hub 204. Hub 204 can be configured to provide real-time data toserver 116 as well as alarming, sensing and control featured forfacility 102.

The real-time data from hub 204 can be passed to a comparison engine210, which can form part of analytics engine 118. Comparison engine 210can be configured to continuously compare the real-time data withpredicted values generated by simulation engine 208. Based on thecomparison, comparison engine 210 can be further configured to determinewhether deviations between the real-time and the expected values exists,and if so to classify the deviation, e.g., high, marginal, low, etc. Thedeviation level can then be communicated to decision engine 212, whichcan also comprise part of analytics engine 118.

Decision engine 212 can be configured to look for significant deviationsbetween the predicted values and real-time values as received from thecomparison engine 210. If significant deviations are detected, decisionengine 212 can also be configured to determine whether an alarmcondition exists, activate the alarm and communicate the alarm toHuman-Machine Interface (HMI) 214 for display in real-time via, e.g.,thin client 128. Decision engine 212 can also be configured to performroot cause analysis for significant deviations in order to determine theinterdependencies and identify the parent-child failure relationshipsthat may be occurring. In this manner, parent alarm conditions are notdrowned out by multiple children alarm conditions, allowing theuser/operator to focus on the main problem, at least at first.

Thus, in one embodiment, and alarm condition for the parent can bedisplayed via HMI 214 along with an indication that processes andequipment dependent on the parent process or equipment are also in alarmcondition. This also means that server 116 can maintain a parent-childlogical relationship between processes and equipment comprising facility102. Further, the processes can be classified as critical, essential,non-essential, etc.

Decision engine 212 can also be configured to determine health andperformance levels and indicate these levels for the various processesand equipment via HMI 214. All of which, when combined with the analyticcapabilities of analytics engine 118 allows the operator to minimize therisk of catastrophic equipment failure by predicting future failures andproviding prompt, informative information concerning potential/predictedfailures before they occur. Avoiding catastrophic failures reduces riskand cost, and maximizes facility performance and up time.

Simulation engine 208 operates on complex logical models 206 of facility102. These models are continuously and automatically synchronized withthe actual facility status based on the real-time data provided by hub204. In other words, the models are updated based on current switchstatus, breaker status, e.g., open-closed, equipment on/off status, etc.Thus, the models are automatically updated based on such status, whichallows simulation engine to produce predicted data based on the currentfacility status. This in turn, allows accurate, and meaningfulcomparisons of the real-time data to the predicted data.

Example models 206 that can be maintained and used by server 116 includepower flow models used to calculate expected Kw, Kvar, power factorvalues, etc., short circuit models used to calculate maximum and minimumavailable fault currents, protection models used to determine properprotection schemes and ensure selective coordination of protectivedevices, power quality models used to determine voltage and currentdistortions at any point in the network, to name just a few. It will beunderstood that different models can be used depending on the systembeing modeled.

In certain embodiments, hub 204 is configured to supply equipmentidentification associated with the real-time data. This identificationcan be cross referenced with identifications provided in the models.

In one embodiment, if the comparison performed by comparison engine 210indicates that the differential between the real-time sensor outputvalue and the expected value exceeds a Defined Difference Tolerance(DDT) value (i.e., the “real-time” output values of the sensor output donot indicate an alarm condition) but below an alarm condition (i.e.,alarm threshold value), a calibration request is generated by theanalytics engine 118. If the differential exceeds, the alarm condition,an alarm or notification message is generated by the analytics engine118. If the differential is below the DTT value, the analytics enginedoes nothing and continues to monitor the real-time data and expecteddata.

In one embodiment, the alarm or notification message is sent directly tothe client (i.e., user) 128, e.g., via HMI 214, for display in real-timeon a web browser, pop-up message box, e-mail, or equivalent on theclient 128 display panel. In another embodiment, the alarm ornotification message is sent to a wireless mobile device (e.g.,BLACKBERRY™, laptop, pager, etc.) to be displayed for the user by way ofa wireless router or equivalent device interfaced with the analyticsserver 116. In still another embodiment, the alarm or notificationmessage is sent to both the client 128 display and the wireless mobiledevice. The alarm can be indicative of a need for a repair event ormaintenance to be done on the monitored system. It should be noted,however, that calibration requests should not be allowed if an alarmcondition exists to prevent the models form being calibrated to anabnormal state.

Once the calibration is generated by the analytics engine 118, thevarious operating parameters or conditions of model(s) 206 can beupdated or adjusted to reflect the actual facility configuration. Thiscan include, but is not limited to, modifying the predicted data outputfrom the simulation engine 208, adjusting the logic/processingparameters utilized by the model(s) 206, adding/subtracting functionalelements from model(s) 206, etc. It should be understood, that anyoperational parameter of models 206 can be modified as long as theresulting modifications can be processed and registered by simulationengine 208.

Referring back to FIG. 1, models 206 can be stored in the virtual systemmodel database 126. As noted, a variety of conventional virtual modelapplications can be used for creating a virtual system model, so that awide variety of systems and system parameters can be modeled. Forexample, in the context of an electrical power distribution system, thevirtual system model can include components for modeling reliability,modeling output voltage stability, and modeling power flow. In addition,models 206 can include dynamic control logic that permits a user toconfigure the models 206 by specifying control algorithms and logicblocks in addition to combinations and interconnections of generators,governors, relays, breakers, transmission line, and the like. Thevoltage stability parameters can indicate capacity in terms of size,supply, and distribution, and can indicate availability in terms ofremaining capacity of the presently configured system. The power flowmodel can specify voltage, frequency, and power factor, thusrepresenting the “health” of the system.

All of models 206 can be referred to as a virtual system model. Thus,virtual system model database can be configured to store the virtualsystem model. A duplicate, but synchronized copy of the virtual systemmodel can be stored in a virtual simulation model database 130. Thisduplicate model can be used for what-if simulations. In other words,this model can be used to allow a system designer to make hypotheticalchanges to the facility and test the resulting effect, without takingdown the facility or costly and time consuming analysis. Suchhypothetical can be used to learn failure patterns and signatures aswell as to test proposed modifications, upgrades, additions, etc., forthe facility. The real-time data, as well as trending produced byanalytics engine 118 can be stored in a real-time data acquisitiondatabase 132.

As discussed above, the virtual system model is periodically calibratedand synchronized with “real-time” sensor data outputs so that thevirtual system model provides data output values that are consistentwith the actual “real-time” values received from the sensor outputsignals. Unlike conventional systems that use virtual system modelsprimarily for system design and implementation purposes (i.e., offlinesimulation and facility planning), the virtual system models describedherein are updated and calibrated with the real-time system operationaldata to provide better predictive output values. A divergence betweenthe real-time sensor output values and the predicted output valuesgenerate either an alarm condition for the values in question and/or acalibration request.

Continuing with FIG. 1, the analytics engine 118 can be configured toimplement pattern/sequence recognition into a real-time decision loopthat, e.g., is enabled by a new type of machine learning calledassociative memory, or hierarchical temporal memory (HTM), which is abiological approach to learning and pattern recognition. Associativememory allows storage, discovery, and retrieval of learned associationsbetween extremely large numbers of attributes in real time. At a basiclevel, an associative memory stores information about how attributes andtheir respective features occur together. The predictive power of theassociative memory technology comes from its ability to interpret andanalyze these co-occurrences and to produce various metrics. Associativememory is built through “experiential” learning in which each newlyobserved state is accumulated in the associative memory as a basis forinterpreting future events. Thus, by observing normal system operationover time, and the normal predicted system operation over time, theassociative memory is able to learn normal patterns as a basis foridentifying non-normal behavior and appropriate responses, and toassociate patterns with particular outcomes, contexts or responses. Theanalytics engine 118 is also better able to understand component meantime to failure rates through observation and system availabilitycharacteristics. This technology in combination with the virtual systemmodel can be characterized as a “neocortical” model of the system undermanagement.

This approach also presents a novel way to digest and comprehend alarmsin a manageable and coherent way. The neocortical model could assist inuncovering the patterns and sequencing of alarms to help pinpoint thelocation of the (impending) failure, its context, and even the cause.Typically, responding to the alarms is done manually by experts who havegained familiarity with the system through years of experience. However,at times, the amount of information is so great that an individualcannot respond fast enough or does not have the necessary expertise. An“intelligent” system like the neocortical system that observes andrecommends possible responses could improve the alarm management processby either supporting the existing operator, or even managing the systemautonomously.

Current simulation approaches for maintaining transient stabilityinvolve traditional numerical techniques and typically do not test allpossible scenarios. The problem is further complicated as the numbers ofcomponents and pathways increase. Through the application of theneocortical model, by observing simulations of circuits, and bycomparing them to actual system responses, it may be possible to improvethe simulation process, thereby improving the overall design of futurecircuits.

The virtual system model database 126, as well as databases 130 and 132,can be configured to store one or more virtual system models, virtualsimulation models, and real-time data values, each customized to aparticular system being monitored by the analytics server 116. Thus, theanalytics server 116 can be utilized to monitor more than one system ata time. As depicted herein, the databases 126, 130, and 132 can behosted on the analytics server 116 and communicatively interfaced withthe analytics engine 118. In other embodiments, databases 126, 130, and132 can be hosted on a separate database server (not shown) that iscommunicatively connected to the analytics server 116 in a manner thatallows the virtual system modeling engine 124 and analytics engine 118to access the databases as needed.

Therefore, in one embodiment, the client 128 can modify the virtualsystem model stored on the virtual system model database 126 by using avirtual system model development interface using well-known modelingtools that are separate from the other network interfaces. For example,dedicated software applications that run in conjunction with the networkinterface to allow a client 128 to create or modify the virtual systemmodels.

The client 128 may utilize a variety of network interfaces (e.g., webbrowser, CITRIX™, WINDOWS TERMINAL SERVICES™, telnet, or otherequivalent thin-client terminal applications, etc.) to access,configure, and modify the sensors (e.g., configuration files, etc.),analytics engine 118 (e.g., configuration files, analytics logic, etc.),calibration parameters (e.g., configuration files, calibrationparameters, etc.), virtual system modeling engine 124 (e.g.,configuration files, simulation parameters, etc.) and virtual systemmodel of the system under management (e.g., virtual system modeloperating parameters and configuration files). Correspondingly, datafrom those various components of the monitored system 102 can bedisplayed on a client 128 display panel for viewing by a systemadministrator or equivalent.

As described above, server 116 is configured to synchronize the physicalworld with the virtual and report, e.g., via visual, real-time display,deviations between the two as well as system health, alarm conditions,predicted failures, etc. This is illustrated with the aid of FIG. 3, inwhich the synchronization of the physical world (left side) and virtualworld (right side) is illustrated. In the physical world, sensors 202produce real-time data 302 for the processes 312 and equipment 314 thatmake up facility 102. In the virtual world, simulations 304 of thevirtual system model 206 provide predicted values 306, which arecorrelated and synchronized with the real-time data 302. The real-timedata can then be compared to the predicted values so that differences308 can be detected. The significance of these difference can determinethe health status 310 of the system. The health status can then becommunicated to the processes 312 and equipment 314, e.g., via alarmsand indicators, as well as to thin client 128, e.g., via web pages 316.

FIG. 4 is an illustration of the scalability of a system for utilizingreal-time data for predictive analysis of the performance of a monitoredsystem, in accordance with one embodiment. As depicted herein, ananalytics central server 422 is communicatively connected with analyticsserver A 414, analytics server B 416, and analytics server n 418 (i.e.,one or more other analytics servers) by way of one or more networkconnections 114. Each of the analytics servers is communicativelyconnected with a respective data acquisition hub (i.e., Hub A 408, Hub B410, Hub n 412) that communicates with one or more sensors that areinterfaced with a system (i.e., Monitored System A 402, Monitored SystemB 404, Monitored System n 406) that the respective analytical servermonitors. For example, analytics server A 414 is communicativelyconnected with data acquisition hub A 408, which communicates with oneor more sensors interfaced with monitored system A 402.

Each analytics server (i.e., analytics server A 414, analytics server B416, analytics server n 418) is configured to monitor the sensor outputdata of its corresponding monitored system and feed that data to thecentral analytics server 422. Additionally, each of the analyticsservers can function as a proxy agent of the central analytics server422 during the modifying and/or adjusting of the operating parameters ofthe system sensors they monitor. For example, analytics server B 416 isconfigured to be utilized as a proxy to modify the operating parametersof the sensors interfaced with monitored system B 404.

Moreover, the central analytics server 422, which is communicativelyconnected to one or more analytics server(s) can be used to enhance thescalability. For example, a central analytics server 422 can be used tomonitor multiple electrical power generation facilities (i.e., monitoredsystem A 402 can be a power generation facility located in city A whilemonitored system B 404 is a power generation facility located in city B)on an electrical power grid. In this example, the number of electricalpower generation facilities that can be monitored by central analyticsserver 422 is limited only by the data processing capacity of thecentral analytics server 422. The central analytics server 422 can beconfigured to enable a client 128 to modify and adjust the operationalparameters of any the analytics servers communicatively connected to thecentral analytics server 422. Furthermore, as discussed above, each ofthe analytics servers are configured to serve as proxies for the centralanalytics server 422 to enable a client 128 to modify and/or adjust theoperating parameters of the sensors interfaced with the systems thatthey respectively monitor. For example, the client 128 can use thecentral analytics server 422, and vice versa, to modify and/or adjustthe operating parameters of analytics server A 414 and utilize the sameto modify and/or adjust the operating parameters of the sensorsinterfaced with monitored system A 402. Additionally, each of theanalytics servers can be configured to allow a client 128 to modify thevirtual system model through a virtual system model developmentinterface using well-known modeling tools.

In one embodiment, the central analytics server 422 can function tomonitor and control a monitored system when its corresponding analyticsserver is out of operation. For example, central analytics server 422can take over the functionality of analytics server B 416 when theserver 416 is out of operation. That is, the central analytics server422 can monitor the data output from monitored system B 404 and modifyand/or adjust the operating parameters of the sensors that areinterfaced with the system 404.

In one embodiment, the network connection 114 is established through awide area network (WAN) such as the Internet. In another embodiment, thenetwork connection is established through a local area network (LAN)such as the company intranet. In a separate embodiment, the networkconnection 114 is a “hardwired” physical connection. For example, thedata acquisition hub 112 may be communicatively connected (via Category5 (CAT5), fiber optic or equivalent cabling) to a data server that iscommunicatively connected (via CAT5, fiber optic or equivalent cabling)through the Internet and to the analytics server 116 server hosting theanalytics engine 118. In another embodiment, the network connection 114is a wireless network connection (e.g., Wi-Fi, WLAN, etc.). For example,utilizing a 802.11b/g or equivalent transmission format.

In certain embodiments, regional analytics servers can be placed betweenlocal analytics servers 414,416, . . . , 418 and central analyticsserver 422. Further, in certain embodiments a disaster recover cite canbe included at the central analytics server 422 level.

FIG. 5 is a block diagram that shows the configuration details ofanalytics server 116 illustrated in FIG. 1 in more detail. It should beunderstood that the configuration details in FIG. 5 are merely oneembodiment of the items described for FIG. 1, and it should beunderstood that alternate configurations and arrangements of componentscould also provide the functionality described herein.

The analytics server 116 includes a variety of components. In the FIG. 6embodiment, the analytics server 116 is implemented in a Web-basedconfiguration, so that the analytics server 116 includes (orcommunicates with) and secure web server 530 for communication with thesensor systems 519 (e.g., data acquisition units, metering devices,sensors, etc.) and external communication entities 534 (e.g., webbrowser, “thin client” applications, etc.). A variety of user views andfunctions 532 are available to the client 128 such as: alarm reports,Active X controls, equipment views, view editor tool, custom userinterface page, and XML parser. It should be appreciated, however, thatthese are just examples of a few in a long list of views and functions532 that the analytics server 116 can deliver to the externalcommunications entities 534 and are not meant to limit the types ofviews and functions 532 available to the analytics server 116 in anyway.

The analytics server 116 also includes an alarm engine 506 and messagingengine 504, for the aforementioned external communications. The alarmengine 506 is configured to work in conjunction with the messagingengine 504 to generate alarm or notification messages 502 (in the formof text messages, e-mails, paging, etc.) in response to the alarmconditions previously described. The analytics server 116 determinesalarm conditions based on output data it receives from the varioussensor systems 519 through a communications connection (e.g., wireless516, TCP/IP 518, Serial 520, etc) and simulated output data from avirtual system model 512, of the monitored system, processed by theanalytics engine 118. In one embodiment, the virtual system model 512 iscreated by a user through interacting with an external communicationentity 534 by specifying the components that comprise the monitoredsystem and by specifying relationships between the components of themonitored system. In another embodiment, the virtual system model 512 isautomatically generated by the analytics engine 118 as components of themonitored system are brought online and interfaced with the analyticsserver 116.

Continuing with FIG. 5, a virtual system model database 526 iscommunicatively connected with the analytics server 116 and isconfigured to store one or more virtual system model 512, each of which,represents a particular monitored system. For example, the analyticsserver 116 can conceivably monitor multiple electrical power generationsystems (e.g., system A, system B, system C, etc.) spread across a widegeographic area (e.g., City A, City B, City C, etc.). Therefore, theanalytics server 116 will utilize a different virtual system model 512for each of the electrical power generation systems that it monitors.Virtual simulation model database 538 can be configured to store asynchronized, duplicate copy of the virtual system model 512, andreal-time data acquisition database 549 can store the real-time andtrending data for the system(s) being monitored.

Thus, in operation, analytics server 116 can receive real-time data forvarious sensors, i.e., components, through data acquisition system 202.As can be seen, analytics server 116 can comprise various driversconfigured to interface with the various types of sensors, etc.,comprising data acquisition system 202. This data represents thereal-time operational data for the various components. For example, thedata may indicate that a certain component is operating at a certainvoltage level and drawing certain amount of current. This informationcan then be fed to a modeling engine to generate a virtual system model512 that is based on the actual real-time operational data.

Analytics engine 118 can be configured to compare predicted data basedon the virtual system model 512 with real-time data received from dataacquisition system 202 and to identify any differences. In someinstances, analytics engine can be configured to identify thesedifferences and then update, i.e., calibrate, the virtual system model512 for use in future comparisons. In this manner, more accuratecomparisons and warnings can be generated.

But in other instances, the differences will indicate a failure, or thepotential for a failure. For example, when a component begins to fail,the operating parameters will begin to change. This change may be suddenor it may be a progressive change over time. Analytics engine 118 candetect such changes and issue warnings that can allow the changes to bedetected before a failure occurs. The analytic engine 118 can beconfigured to generate warnings that can be communicated via interface532.

For example, a user can access information from server 116 using thinclient 534. For example, reports can be generate and served to thinclient 534 via server 530. These reports can, for example, compriseschematic or symbolic illustrations of the system being monitored.Status information for each component can be illustrated or communicatedfor each component. This information can be numerical, i.e., the voltageor current level. Or it can be symbolic, i.e., green for normal, red forfailure or warning. In certain embodiments, intermediate levels offailure can also be communicated, i.e., yellow can be used to indicateoperational conditions that project the potential for future failure. Itshould be noted that this information can be accessed in real-time.Moreover, via thin client 534, the information can be accessed fromanywhere and anytime.

FIG. 6 is an illustration of a flowchart describing a method forreal-time monitoring and predictive analysis of a monitored system, inaccordance with one embodiment. Method 600 begins with operation 602where real-time data indicative of the monitored system status isprocessed to enable a virtual model of the monitored system undermanagement to be calibrated and synchronized with the real-time data. Inone embodiment, the monitored system 102 is a mission criticalelectrical power system. In another embodiment, the monitored system 102can include an electrical power transmission infrastructure. In stillanother embodiment, the monitored system 102 includes a combination ofthereof. It should be understood that the monitored system 102 can beany combination of components whose operations can be monitored withconventional sensors and where each component interacts with or isrelated to at least one other component within the combination.

Method 600 moves on to operation 604 where the virtual system model ofthe monitored system under management is updated in response to thereal-time data. This may include, but is not limited to, modifying thesimulated data output from the virtual system model, adjusting thelogic/processing parameters utilized by the virtual system modelingengine to simulate the operation of the monitored system,adding/subtracting functional elements of the virtual system model, etc.It should be understood, that any operational parameter of the virtualsystem modeling engine and/or the virtual system model may be modifiedby the calibration engine as long as the resulting modifications can beprocessed and registered by the virtual system modeling engine.

Method 600 proceeds on to operation 606 where the simulated real-timedata indicative of the monitored system status is compared with acorresponding virtual system model created at the design stage. Thedesign stage models, which may be calibrated and updated based onreal-time monitored data, are used as a basis for the predictedperformance of the system. The real-time monitored data can then providethe actual performance over time. By comparing the real-time data withthe predicted performance information, differences can be identified andtracked by, e.g., the analytics engine 118. Analytics engine 118 canthen track trends, determine alarm states, etc., and generate areal-time report of the system status in response to the comparison. Thereal-time report can relate to capacity and voltage stability ofelectrical distribution lines of the system under management.Alternatively, the real-time report may relate to power flow and loadingof electrical distribution lines of the system under management, or mayrelate to arc flash energy and arc heat exposure. The real-time reportmay relate to dynamic behavior response and strength of the system undermanagement as a function of system exposure to external events.

In other words, the analytics can be used to analyze the comparison andreal-time data and determine if there is a problem that should bereported and what level the problem may be, e.g., low priority, highpriority, critical, etc. The analytics can also be used to predictfuture failures and time to failure, etc. In one embodiment, reports canbe displayed on a conventional web browser (e.g. INTERNET EXPLORER™,FIREFOX™, NETSCAPE™, etc) that is rendered on a standard personalcomputing (PC) device. In another embodiment, the “real-time” report canbe rendered on a “thin-client” computing device (e.g., CITRIX™, WINDOWSTERMINAL SERVICES™, telnet, or other equivalent thin-client terminalapplication). In still another embodiment, the report can be displayedon a wireless mobile device (e.g., BLACKBERRY™, laptop, pager, etc.).For example, in one embodiment, the “real-time” report can include suchinformation as the differential in a particular power parameter (i.e.,current, voltage, etc.) between the real-time measurements and thevirtual output data.

FIG. 7 is an illustration of a flowchart describing a method formanaging real-time updates to a virtual system model of a monitoredsystem, in accordance with one embodiment. Method 700 begins withoperation 702 where real-time data output from a sensor interfaced withthe monitored system is received. The sensor is configured to captureoutput data at split-second intervals to effectuate “real time” datacapture. For example, in one embodiment, the sensor is configured togenerate hundreds of thousands of data readings per second. It should beappreciated, however, that the number of data output readings taken bythe sensor may be set to any value as long as the operational limits ofthe sensor and the data processing capabilities of the data acquisitionhub are not exceeded.

Method 700 moves to operation 704 where the real-time data is processedinto a defined format. This would be a format that can be utilized bythe analytics server to analyze or compare the data with the simulateddata output from the virtual system model. In one embodiment, the datais converted from an analog signal to the a digital signal. In anotherembodiment, the data is converted from a digital signal to an analogsignal. It should be understood, however, that the real-time data may beprocessed into any defined format as long as the analytics engine canutilize the resulting data in a comparison with simulated output datafrom a virtual system model of the monitored system.

Method 700 continues on to operation 706 where the predicted (i.e.,simulated) data for the monitored system is generated using a virtualsystem model of the monitored system. As discussed above, a virtualsystem modeling engine utilizes dynamic control logic stored in thevirtual system model to generate the predicted output data. Thepredicted data is supposed to be representative of data that shouldactually be generated and output from the monitored system.

Method 700 proceeds to operation 708 where a determination is made as towhether the difference between the real-time data output and thepredicted system data falls between a set value and an alarm conditionvalue, where if the difference falls between the set value and the alarmcondition value a virtual system model calibration and a response can begenerated. That is, if the comparison indicates that the differentialbetween the “real-time” sensor output value and the corresponding“virtual” model data output value exceeds a Defined Difference Tolerance(DDT) value (i.e., the “real-time” output values of the sensor output donot indicate an alarm condition) but below an alarm condition (i.e.,alarm threshold value), a response can be generated by the analyticsengine. In one embodiment, if the differential exceeds, the alarmcondition, an alarm or notification message is generated by theanalytics engine 118. In another embodiment, if the differential isbelow the DTT value, the analytics engine does nothing and continues tomonitor the “real-time” data and “virtual” data. Generally speaking, thecomparison of the set value and alarm condition is indicative of thefunctionality of one or more components of the monitored system.

FIG. 8 is an illustration of a flowchart describing a method forsynchronizing real-time system data with a virtual system model of amonitored system, in accordance with one embodiment. Method 800 beginswith operation 802 where a virtual system model calibration request isreceived. A virtual model calibration request can be generated by ananalytics engine whenever the difference between the real-time dataoutput and the predicted system data falls between a set value and analarm condition value.

Method 800 proceeds to operation 804 where the predicted system outputvalue for the virtual system model is updated with a real-time outputvalue for the monitored system. For example, if sensors interfaced withthe monitored system outputs a real-time current value of A, then thepredicted system output value for the virtual system model is adjustedto reflect a predicted current value of A.

Method 800 moves on to operation 806 where a difference between thereal-time sensor value measurement from a sensor integrated with themonitored system and a predicted sensor value for the sensor isdetermined. As discussed above, the analytics engine is configured toreceive “real-time” data from sensors interfaced with the monitoredsystem via the data acquisition hub (or, alternatively directly from thesensors) and “virtual” data from the virtual system modeling enginesimulating the data output from a virtual system model of the monitoredsystem. In one embodiment, the values are in units of electrical poweroutput (i.e., current or voltage) from an electrical power generation ortransmission system. It should be appreciated, however, that the valuescan essentially be any unit type as long as the sensors can beconfigured to output data in those units or the analytics engine canconvert the output data received from the sensors into the desired unittype before performing the comparison.

Method 800 continues on to operation 808 where the operating parametersof the virtual system model is adjusted to minimize the difference. Thismeans that the logic parameters of the virtual system model that avirtual system modeling engine uses to simulate the data output fromactual sensors interfaced with the monitored system are adjusted so thatthe difference between the real-time data output and the simulated dataoutput is minimized. Correspondingly, this operation will update andadjust any virtual system model output parameters that are functions ofthe virtual system model sensor values. For example, in a powerdistribution environment, output parameters of power load or demandfactor might be a function of multiple sensor data values. The operatingparameters of the virtual system model that mimic the operation of thesensor will be adjusted to reflect the real-time data received fromthose sensors. In one embodiment, authorization from a systemadministrator is requested prior to the operating parameters of thevirtual system model being adjusted. This is to ensure that the systemadministrator is aware of the changes that are being made to the virtualsystem model. In one embodiment, after the completion of all the variouscalibration operations, a report is generated to provide a summary ofall the adjustments that have been made to the virtual system model.

The embodiments, described herein, can be practiced with other computersystem configurations including hand-held devices, microprocessorsystems, microprocessor-based or programmable consumer electronics,minicomputers, mainframe computers and the like. The embodiments canalso be practiced in distributing computing environments where tasks areperformed by remote processing devices that are linked through anetwork.

It should also be understood that the embodiments described herein canemploy various computer-implemented operations involving data stored incomputer systems. These operations are those requiring physicalmanipulation of physical quantities. Usually, though not necessarily,these quantities take the form of electrical or magnetic signals capableof being stored, transferred, combined, compared, and otherwisemanipulated. Further, the manipulations performed are often referred toin terms, such as producing, identifying, determining, or comparing.

Any of the operations that form part of the embodiments described hereinare useful machine operations. The invention also relates to a device oran apparatus for performing these operations. The systems and methodsdescribed herein can be specially constructed for the required purposes,such as the carrier network discussed above, or it may be a generalpurpose computer selectively activated or configured by a computerprogram stored in the computer. In particular, various general purposemachines may be used with computer programs written in accordance withthe teachings herein, or it may be more convenient to construct a morespecialized apparatus to perform the required operations.

Certain embodiments can also be embodied as computer readable code on acomputer readable medium. The computer readable medium is any datastorage device that can store data, which can thereafter be read by acomputer system. Examples of the computer readable medium include harddrives, network attached storage (NAS), read-only memory, random-accessmemory, CD-ROMs, CD-Rs, CD-RWs, magnetic tapes, and other optical andnon-optical data storage devices. The computer readable medium can alsobe distributed over a network coupled computer systems so that thecomputer readable code is stored and executed in a distributed fashion.

Although a few embodiments of the present invention have been describedin detail herein, it should be understood, by those of ordinary skill,that the present invention may be embodied in many other specific formswithout departing from the spirit or scope of the invention. Therefore,the present examples and embodiments are to be considered asillustrative and not restrictive, and the invention is not to be limitedto the details provided therein, but may be modified and practicedwithin the scope of the appended claims.

What is claimed is:
 1. A data processing system for real-time monitoringand predictive analysis of an electrical system under management,comprising: a calibration and synchronization engine configured toprocess real-time data indicative of the electrical system status andupdate a virtual system model of the electrical system in response to avirtual system model calibration request; and an analytics serverconfigured to determine a difference between the processed real-timedata indicative of the electrical system status and predicted datagenerated using the virtual system model, produce a real-time report ofthe electrical system status in response to the determination, if thedifference-is less than an alarm condition value but greater than a setvalue, generate a virtual system model calibration request, and send therequest to the calibration and synchronization engine, and if thedifference is greater than the alarm condition value, generate an alarmand prevent updates to the virtual system model.
 2. The data processingsystem for real-time monitoring and predictive analysis of an electricalsystem under management, as recited in claim 1, wherein the real-timereport relates to reliability and availability of the electrical systemunder management.
 3. The data processing system for real-time monitoringand predictive analysis of an electrical system under management, asrecited in claim 2, wherein the real-time report is displayed on athin-client computing device communicatively connected to the analysisserver.
 4. The data processing system for real-time monitoring andpredictive analysis of an electrical system under management, as recitedin claim 1, wherein the real-time report relates to capacity and voltagestability of electrical distribution lines of the electrical system. 5.The data processing system for real-time monitoring and predictiveanalysis of an electrical system under management, as recited in claim1, wherein the real-time report relates to power flow and loading ofelectrical distribution lines of the electrical system.
 6. The dataprocessing system for real-time monitoring and predictive analysis of anelectrical system under management, as recited in claim 1, wherein thereal-time report relates to dynamic behavior response and strength ofthe electrical system as a function of system exposure to externalconditions.
 7. The data processing system for real-time monitoring andpredictive analysis of an electrical system under management, as recitedin claim 1, wherein the real-time report relates to arc flash energy andarc heat exposure.
 8. The data processing system for real-timemonitoring and predictive analysis of an electrical system undermanagement, as recited in claim 1, wherein the analytics server receivesdata from a plurality of system sensors providing real-time datarelating to components of the electrical system.
 9. The data processingsystem for real-time monitoring and predictive analysis of an electricalsystem under management, as recited in claim 8, wherein the analyticsserver receives data from a virtual model database that provides valuesthat relate to the virtual model and that correspond to the real-timedata received from the system sensors.
 10. A method for real-timemonitoring and predictive analysis of an electrical system undermanagement, comprising: processing real-time data indicative of theelectrical system status to enable a virtual model of the electricalsystem under management to be calibrated and synchronized with thereal-time data and to generate predicted data for the electrical system;analyzing a difference between the real-time data and the predicteddata; producing a real-time report of the electrical system status inresponse to the analysis; if the difference is less than an alarmcondition value but greater than a set value, updating the virtual modelof the electrical system under management in response to the real-timedata to calibrate the virtual model, if the difference is greater thanthe alarm condition value, generating an alarm and preventing updates tothe virtual model.
 11. The method for real-time monitoring andpredictive analysis of an electrical system under management, as recitedin claim 10, wherein the real-time report relates to reliability andavailability of the electrical system.
 12. The method for real-timemonitoring and predictive analysis of an electrical system undermanagement, as recited in claim 10, the real-time report relates tocapacity and voltage stability of electrical distribution lines of theelectrical system.
 13. The method for real-time monitoring andpredictive analysis of an electrical system under management, as recitedin claim 10, wherein the real-time report is displayed on a thin-clientcomputing device.
 14. The method for real-time monitoring and predictiveanalysis of an electrical system under management, as recited in claim10, wherein the real-time report relates to power flow and loading ofelectrical distribution lines of the electrical system.
 15. The methodfor real-time monitoring and predictive analysis of an electrical systemunder management, as recited in claim 10, wherein the real-time reportrelates to dynamic behavior response and strength of the electricalsystem as a function of system exposure to external conditions.
 16. Themethod for real-time monitoring and predictive analysis of an electricalsystem under management, as recited in claim 10, wherein the real-timereport relates to arc flash energy and arc heat exposure.
 17. A dataprocessing system for real-time monitoring and predictive analysis of amonitored system, comprising: a calibration and synchronization engineconfigured to process real-time data indicative of the monitored systemstatus and update a virtual model of the monitored system in response toa virtual model calibration request; and an analysis server configuredto determine a difference between the processed real-time dataindicative of the monitored system status and predicted data generatedusing the virtual model, if the difference is less than an alarmcondition value but greater than a set value, generate a virtual modelcalibration request and send the request to the calibration andsynchronization engine, and if the difference is greater than the alarmcondition value, generate an alarm and prevent updates to the virtualmodel.
 18. A method for real-time monitoring and predictive analysis ofa monitored system, comprising: processing real-time data indicative ofthe monitored system status to enable a virtual model of the monitoredsystem under management to be calibrated and synchronized with thereal-time data; determining a difference between the processed real-timedata indicative of the monitored system status and corresponding outputvalues of the virtual model; if the difference is less than an alarmcondition value but greater than a set value, updating the virtualmodel; and if the difference is greater than the alarm condition value,generating an alarm and preventing updates to the virtual model.